#include<head.h>
/**
 * @函数原型:       
 *              typedef void (*sighandler_t)(int);
                sighandler_t signal(int signum, sighandler_t handler);
 * @函数功能:       
                设置对指定信号的处理方式。可以将信号处理设置为忽略、捕获处理或恢复默认行为。
	            需要注意的是 这个是对信号进行 注册 也就是设置了就好，后面的程序会遇到这个信号发送中断
 * @参数说明: 
 * @        参数1: signum: 要处理的信号编号，如 SIGINT, SIGTERM 等。
 * @        参数2: handler: 信号处理函数的指针。可以是一个函数地址，也可以是特殊值 SIG_IGN（忽略信号）或 SIG_DFL（使用默认处理）。
 * @返回值: 
 *              成功: 返回之前的信号处理函数指针。
                失败: 返回 SIG_ERR，并设置相应的错误码。
 */

void handler(int signum)
{
    printf("捕获到信号:%d\n", signum);
    printf("hello world\n");
    sleep(1);
}


int main(int argc, char const *argv[])
{
    //signal(SIGINT, SIG_IGN); //忽略信号
    //signal(SIGQUIT, SIG_DFL); //恢复默认行为 
    //signal(SIGKILL, SIG_IGN); //忽略信号 SIGKILL信号不能被忽略
    signal(SIGINT, handler); //捕获处理 
    while(1)
    {
        printf("hello world\n");
        sleep(1);
    }
    
    return 0;
}
